1 /* 2 * PreferencesModelTest 3 * 4 * $RCSfile: PreferencesModelTest.java,v $ 5 * $Revision: 1.1 $ 6 * $Date: 2004/01/01 17:42:19 $ 7 * $Source: /cvsroot/jpui/jpui/test/PreferencesModelTest.java,v $ 8 * 9 * JPUI - Java Preferences User Interface 10 * Copyright (C) 2003 11 * 12 * This program is free software; you can redistribute it and/or modify it 13 * under the terms of the GNU General Public License as published by the Free 14 * Software Foundation; either version 2 of the License, or (at your option) 15 * any later version. 16 * 17 * This program is distributed in the hope that it will be useful, but WITHOUT 18 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 19 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 20 * more details. 21 * 22 * You should have received a copy of the GNU General Public License along with 23 * this program; if not, write to the Free Software Foundation, Inc., 59 Temple 24 * Place, Suite 330, Boston, MA 02111-1307 USA 25 * 26 * Author: macksold@users.sourceforge.net 27 */ 28 29 import java.util.prefs.BackingStoreException; 30 import java.util.prefs.Preferences; 31 32 import junit.framework.TestCase; 33 34 /*** 35 * Test class for PreferencesModel 36 */ 37 public class PreferencesModelTest extends TestCase { 38 private static final String TESTNODE = "PreferencesModelTestNode"; 39 40 /*** 41 * Constructor for PreferencesModelTest 42 * @param oArg 43 */ 44 public PreferencesModelTest(String oArg) { 45 super(oArg); 46 } 47 48 /*** 49 * @see TestCase#setUp() 50 */ 51 protected void setUp() throws Exception { 52 super.setUp(); 53 } 54 55 /*** 56 * @see TestCase#tearDown() 57 */ 58 protected void tearDown() throws Exception { 59 super.tearDown(); 60 } 61 62 public void testGetCurrentNode() { 63 Preferences oUser = Preferences.userRoot(); 64 PreferencesModel.Instance().setCurrentNode(oUser); 65 66 // current node should be user root 67 assertEquals( 68 oUser, 69 PreferencesModel.Instance().getCurrentNode()); 70 } 71 72 public void testSetCurrentNode() { 73 Preferences oUser = Preferences.userRoot(); 74 PreferencesModel.Instance().setCurrentNode(oUser); 75 76 // current node should be user root 77 assertEquals( 78 oUser, 79 PreferencesModel.Instance().getCurrentNode()); 80 } 81 82 public void testSetAttribute() { 83 Preferences oUser = Preferences.userRoot(); 84 PreferencesModel.Instance().setCurrentNode(oUser); 85 PreferencesModel.Instance().newNode(TESTNODE); 86 87 Preferences oFooNode = PreferencesModel.Instance().getCurrentNode(); 88 // set the attribute 89 PreferencesModel.Instance().setAttribute("foo", "bar"); 90 // foo should have a value of bar 91 assertEquals( 92 oFooNode.get("foo", null), 93 "bar"); 94 95 // cleanup 96 try 97 { 98 oFooNode.remove("foo"); 99 oFooNode.removeNode(); 100 oUser.sync(); 101 } 102 catch(BackingStoreException oEx) 103 { 104 fail(oEx.getMessage()); 105 } 106 } 107 108 public void testRemoveAttribute() { 109 Preferences oUser = Preferences.userRoot(); 110 PreferencesModel.Instance().setCurrentNode(oUser); 111 PreferencesModel.Instance().newNode(TESTNODE); 112 113 Preferences oFooNode = PreferencesModel.Instance().getCurrentNode(); 114 115 // set the attribute 116 PreferencesModel.Instance().setAttribute("foo", "bar"); 117 assertEquals( 118 oFooNode.get("foo", null), 119 "bar"); 120 // remove the attribute 121 PreferencesModel.Instance().removeAttribute("foo"); 122 // foo should be gone 123 assertNull( 124 oFooNode.get("foo", null)); 125 126 // cleanup 127 try 128 { 129 oFooNode.removeNode(); 130 oUser.sync(); 131 } 132 catch(BackingStoreException oEx) 133 { 134 fail(oEx.getMessage()); 135 } 136 } 137 138 public void testRenameAttribute() { 139 Preferences oUser = Preferences.userRoot(); 140 PreferencesModel.Instance().setCurrentNode(oUser); 141 PreferencesModel.Instance().newNode(TESTNODE); 142 143 Preferences oFooNode = PreferencesModel.Instance().getCurrentNode(); 144 145 // set the attribute 146 PreferencesModel.Instance().setAttribute("foo", "bar"); 147 assertEquals( 148 oFooNode.get("foo", null), 149 "bar"); 150 151 // rename the attribute 152 PreferencesModel.Instance().renameAttribute("foo", "baz"); 153 154 // foo should be gone 155 assertNull( 156 oFooNode.get("foo", null)); 157 158 // baz should now have the value foo used to have 159 assertEquals( 160 oFooNode.get("baz", null), 161 "bar"); 162 163 // cleanup 164 try 165 { 166 oFooNode.removeNode(); 167 oUser.sync(); 168 } 169 catch(BackingStoreException oEx) 170 { 171 fail(oEx.getMessage()); 172 } 173 } 174 175 public void testNewNode() { 176 Preferences oUser = Preferences.userRoot(); 177 PreferencesModel.Instance().setCurrentNode(oUser); 178 PreferencesModel.Instance().newNode(TESTNODE); 179 180 Preferences oFooNode = PreferencesModel.Instance().getCurrentNode(); 181 182 // new node should have the name TESTNODE 183 assertEquals( 184 oFooNode.name(), 185 TESTNODE); 186 187 // cleanup 188 try 189 { 190 oFooNode.remove("foo"); 191 oFooNode.removeNode(); 192 oUser.sync(); 193 } 194 catch(BackingStoreException oEx) 195 { 196 fail(oEx.getMessage()); 197 } 198 } 199 200 public void testDeleteNode() { 201 Preferences oUser = Preferences.userRoot(); 202 PreferencesModel.Instance().setCurrentNode(oUser); 203 PreferencesModel.Instance().newNode(TESTNODE); 204 205 Preferences oFooNode = PreferencesModel.Instance().getCurrentNode(); 206 207 // new node should have the name TESTNODE 208 assertEquals( 209 oFooNode.name(), 210 TESTNODE); 211 212 PreferencesModel.Instance().deleteNode(); 213 try 214 { 215 oFooNode.put("foo", "bar"); 216 fail("Should throw IllegalStateException: node removed"); 217 } 218 catch(IllegalStateException oEx) 219 { 220 } 221 222 // cleanup 223 try 224 { 225 oUser.sync(); 226 } 227 catch(BackingStoreException oEx) 228 { 229 fail(oEx.getMessage()); 230 } 231 } 232 233 }

This page was automatically generated by Maven